﻿using BaseDll;

namespace StationDemo
{
    public class Param_System
    {
        public static Param_System Instance = new Param_System();

        #region 综合
        public ParamSet 机型 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "机型",
            _strParamValMax = "机型",
            _strParamValMin = "机型",
            _strParamVal = "机型",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet 批次 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "批次",
            _strParamValMax = "批次",
            _strParamValMin = "批次",
            _strParamVal = "批次",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet 操作者 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "操作者",
            _strParamValMax = "操作者",
            _strParamValMin = "操作者",
            _strParamVal = "操作者",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet 设备编号 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "设备编号",
            _strParamValMax = "设备编号",
            _strParamValMin = "设备编号",
            _strParamVal = "设备编号",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet 工站编号 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "工站编号",
            _strParamValMax = "工站编号",
            _strParamValMin = "工站编号",
            _strParamVal = "工站编号",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };


        public ParamSet 是否开启Mes = new ParamSet()
        {
            _enuValType = ParamSetUnit.boolUnit,
            _strParamUnit = "是否开启Mes",
            _strParamValMax = true,
            _strParamValMin = false,
            _strParamVal = false,
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet 正常生产时长限制 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "正常生产时长限制",
            _strParamValMax = 100,
            _strParamValMin = 0,
            _strParamVal = 40,
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };

        public ParamSet SN长度 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "SN长度",
            _strParamValMax = 100,
            _strParamValMin = 0,
            _strParamVal = 40,
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };
        public ParamSet SN固定字符 = new ParamSet()
        {
            _enuValType = ParamSetUnit.stringUnit,
            _strParamUnit = "SN固定字符",
            _strParamValMax = "",
            _strParamValMin = "",
            _strParamVal = "",
            _ParamRight = UserRight.Operator,
            _ParamClass = "综合",
            b_IsStartCheck = true,
        };





        #endregion

        public ParamSet 是否屏蔽扫码 = new ParamSet()
        {
            _enuValType = ParamSetUnit.boolUnit,
            _strParamUnit = "是否屏蔽扫码",
            _strParamValMax = true,
            _strParamValMin = false,
            _strParamVal = false,
            _ParamRight = UserRight.Operator,
            _ParamClass = "屏蔽参数",
            b_IsStartCheck = true,
        };
        public ParamSet 是否屏蔽鱼眼箱 = new ParamSet()
        {
            _enuValType = ParamSetUnit.boolUnit,
            _strParamUnit = "是否屏蔽鱼眼箱",
            _strParamValMax = true,
            _strParamValMin = false,
            _strParamVal = true,
            _ParamRight = UserRight.Operator,
            _ParamClass = "屏蔽参数",
            b_IsStartCheck = true,
        };

        public ParamSet 点亮通讯超时时间 = new ParamSet()
        {
            _enuValType = ParamSetUnit.intUnit,
            _strParamUnit = "点亮通讯超时时间",
            _strParamValMax = 600000,
            _strParamValMin = 0,
            _strParamVal = 60000,
            _ParamRight = UserRight.Operator,
            _ParamClass = "超时参数",
            b_IsStartCheck = true,
        };
        public ParamSet 读取标定数据超时时间 = new ParamSet()
        {
            _enuValType = ParamSetUnit.intUnit,
            _strParamUnit = "读取标定数据超时时间",
            _strParamValMax = 600000,
            _strParamValMin = 0,
            _strParamVal = 60000,
            _ParamRight = UserRight.Operator,
            _ParamClass = "超时参数",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测量超时时间 = new ParamSet()
        {
            _enuValType = ParamSetUnit.intUnit,
            _strParamUnit = "三角测量超时时间",
            _strParamValMax = 600000,
            _strParamValMin = 0,
            _strParamVal = 60000,
            _ParamRight = UserRight.Operator,
            _ParamClass = "超时参数",
            b_IsStartCheck = true,
        };
        public ParamSet 启用鱼眼箱 = new ParamSet()
        {
            _enuValType = ParamSetUnit.boolUnit,
            _strParamUnit = "启用鱼眼箱",
            _strParamValMax = true,
            _strParamValMin = false,
            _strParamVal = false,
            _ParamRight = UserRight.Operator,
            _ParamClass = "超时参数",
            b_IsStartCheck = true,
        };

        public ParamSet 三角测试点位1误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位2误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位3误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位4误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位5误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位6误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位7误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位8误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位9误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位10误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位11误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位12误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位13误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位14误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位15误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };
        public ParamSet 三角测试点位16误差绝对值上限 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "pix",
            _strParamValMax = 9999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0.15,
            _ParamRight = UserRight.Operator,
            _ParamClass = "三角测试结果规格",
            b_IsStartCheck = true,
        };

        public ParamSet 平行光管模拟距离值 = new ParamSet()
        {
            _enuValType = ParamSetUnit.doubleUnit,
            _strParamUnit = "mm",
            _strParamValMax = 99999.0,
            _strParamValMin = 0.0,
            _strParamVal = 0,
            _ParamRight = UserRight.Operator,
            _ParamClass = "平行光管",
            b_IsStartCheck = true,
        };
        public ParamSet 平行光管亮度值 = new ParamSet()
        {
            _enuValType = ParamSetUnit.intUnit,
            _strParamUnit = "mm",
            _strParamValMax = 10000,
            _strParamValMin = 0,
            _strParamVal = 0,
            _ParamRight = UserRight.Operator,
            _ParamClass = "平行光管",
            b_IsStartCheck = true,
        };



    }
    public enum IO_IN
    {
        急停,
        安全门,
        气源检测,
        安全光栅1,
        安全光栅2,
        人工位启动信号,
    }
    public enum IO_OUT
    {
        黄灯,
        绿灯,
        红灯,
        蜂鸣,
        照明灯,
    }

    public enum Station
    {
        三角测试1,
        三角测试2,
        三角测试3,
        三角测试4,
        上料,
        转盘
    }


    public enum AlarmList
    {
        急停 = 0,
        安全门,
        气源检测,
        安全光栅,
        安全定义,
        扫二维码失败,
        耗材使用完毕,
        产品SN校验错误,
        等到扫码超时,
        点亮超时,
        通讯超时,
        读取标定数据超时,
        取图超时,
        治具开合感应,
        产品有无感应,
        MES进站失败,
    }

    public enum ServerCmd
    {
        点亮 = 0,//通用

        取图 = 1,//标定
        标定测试 = 2,//标定
        烧录 = 3,//标定
        关闭点亮 = 4,//标定
        清标定数据 = 5,//标定
        对心 = 9,


        读取烧录数据 = 6,//三角测量
        三角取图 = 7,//三角测量

    }



}